package com.comprehensive.common.po;

import java.time.LocalDate;


/**
 * Movies 类用于表示电影的实体信息，对应数据库中的 movies 表。
 * 该类实现了 Serializable 接口，支持对象的序列化操作。
 */
public class Movies extends BaseEntity {
    /**
     * 电影的标题。
     */
    private String title;

    /**
     * 电影的类型，使用数字进行标识。
     */
    private Integer type;

    /**
     * 电影的制作国家。
     */
    private String country;

    /**
     * 电影的类型分类，例如动作、喜剧等。
     */
    private String genre;

    /**
     * 电影的评级，例如 PG-13、R 等。
     */
    private String rating;

    /**
     * 电影的导演姓名。
     */
    private String director;

    /**
     * 电影的演员列表，多个演员用特定分隔符分隔。
     */
    private String actors;

    /**
     * 电影的剧情描述。
     */
    private String description;

    /**
     * 电影海报的链接地址。
     */
    private String posterUrl;

    /**
     * 电影的发布日期。
     */
    private LocalDate releaseDate;
    /**
     * 电影的来源标识，用于区分不同来源的电影数据。
     */
    private String source;
    /**
     * 电影的来源ID
     */
    private Long sourceMovieId;
    
    /**
     * 获取电影的标题
     * @return 电影的标题
     */
    public String getTitle() {
        return title;
    }
    
    /**
     * 设置电影的标题
     * @param title 电影的标题
     */
    public void setTitle(String title) {
        this.title = title;
    }
    
    /**
     * 获取电影的类型
     * @return 电影的类型
     */
    public Integer getType() {
        return type;
    }
    
    /**
     * 设置电影的类型
     * @param type 电影的类型
     */
    public void setType(Integer type) {
        this.type = type;
    }
    
    /**
     * 获取电影的制作国家
     * @return 电影的制作国家
     */
    public String getCountry() {
        return country;
    }
    
    /**
     * 设置电影的制作国家
     * @param country 电影的制作国家
     */
    public void setCountry(String country) {
        this.country = country;
    }
    
    /**
     * 获取电影的类型分类
     * @return 电影的类型分类
     */
    public String getGenre() {
        return genre;
    }
    
    /**
     * 设置电影的类型分类
     * @param genre 电影的类型分类
     */
    public void setGenre(String genre) {
        this.genre = genre;
    }
    
    /**
     * 获取电影的评级
     * @return 电影的评级
     */
    public String getRating() {
        return rating;
    }
    
    /**
     * 设置电影的评级
     * @param rating 电影的评级
     */
    public void setRating(String rating) {
        this.rating = rating;
    }
    
    /**
     * 获取电影的导演姓名
     * @return 电影的导演姓名
     */
    public String getDirector() {
        return director;
    }
    
    /**
     * 设置电影的导演姓名
     * @param director 电影的导演姓名
     */
    public void setDirector(String director) {
        this.director = director;
    }
    
    /**
     * 获取电影的演员列表
     * @return 电影的演员列表
     */
    public String getActors() {
        return actors;
    }
    
    /**
     * 设置电影的演员列表
     * @param actors 电影的演员列表
     */
    public void setActors(String actors) {
        this.actors = actors;
    }
    
    /**
     * 获取电影的剧情描述
     * @return 电影的剧情描述
     */
    public String getDescription() {
        return description;
    }
    
    /**
     * 设置电影的剧情描述
     * @param description 电影的剧情描述
     */
    public void setDescription(String description) {
        this.description = description;
    }
    
    /**
     * 获取电影海报的链接地址
     * @return 电影海报的链接地址
     */
    public String getPosterUrl() {
        return posterUrl;
    }
    
    /**
     * 设置电影海报的链接地址
     * @param posterUrl 电影海报的链接地址
     */
    public void setPosterUrl(String posterUrl) {
        this.posterUrl = posterUrl;
    }
    
    /**
     * 获取电影的发布日期
     * @return 电影的发布日期
     */
    public LocalDate getReleaseDate() {
        return releaseDate;
    }
    
    /**
     * 设置电影的发布日期
     * @param releaseDate 电影的发布日期
     */
    public void setReleaseDate(LocalDate releaseDate) {
        this.releaseDate = releaseDate;
    }
    
    /**
     * 获取电影的来源标识
     * @return 电影的来源标识
     */
    public String getSource() {
        return source;
    }
    
    /**
     * 设置电影的来源标识
     * @param source 电影的来源标识
     */
    public void setSource(String source) {
        this.source = source;
    }
    
    /**
     * 获取电影的来源ID
     * @return 电影的来源ID
     */
    public Long getSourceMovieId() {
        return sourceMovieId;
    }
    
    /**
     * 设置电影的来源ID
     * @param sourceMovieId 电影的来源ID
     */
    public void setSourceMovieId(Long sourceMovieId) {
        this.sourceMovieId = sourceMovieId;
    }
}